package cn.glutnn.subject.domain.service;


import cn.glutnn.subject.common.entity.PageResult;
import cn.glutnn.subject.domain.enyity.SubjectInfoBO;
import cn.glutnn.subject.domain.enyity.SubjectLabelBO;
import cn.glutnn.subject.infra.basic.entity.SubjectInfoEs;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

import java.util.List;

/**
 * (SubjectCategory)表服务接口
 *
 * @author msh
 * @since 2024-11-20 15:42:42
 */
public interface SubjectInfoDomainService {

    /**
     * 新增题目
     */
    void add(SubjectInfoBO subjectInfoBO);

    Page<SubjectInfoBO> querySubjectList(SubjectInfoBO subjectInfoBO);

    SubjectInfoBO querySubjectDetail(SubjectInfoBO subjectInfoBO);

    /**
     * 全文检索
     */
    PageResult<SubjectInfoEs> getSubjectPageBySearch(SubjectInfoBO subjectInfoBO);

    List<SubjectInfoBO> getContributeList();

    void assembleSubjectCursor(SubjectInfoBO subjectInfoBO, SubjectInfoBO bo);
}

